Appel d'un programme depuis un autre programme

Un programme peut appeler un autre programme et l'exécuter comme sous-routine. Cette sous-routine peut être externe (programme distinct) ou interne (programme intégré au programme principal). L'utilisation de sous-routines est utile lorsqu'un programme doit répéter le même groupe de commandes à plusieurs emplacements différents.

Appel d'un programme distinct

Pour appeler un programme distinct, utilisez la même syntaxe que pour exécuter le programme à partir de la ligne de saisie.

Définition et appel d'une sous-routine interne

Pour définir une sous-routine interne, utilisez la commande Define et le bloc Prgm...EndPrgm. Dans la mesure où une sous-routine doit être définie avant de pouvoir être appelée, il est judicieux de définir les sous-routines au début du programme principal.

L'appel et l'exécution d'une sous-routine s'effectuent de la même façon que pour un programme distinct.

À

Déclare la sous-routine comme variable locale.

Á

Définit la sous-routine.

Â

Appelle la sous-routine.

Remarque : Utilisez le menu Var de l'Éditeur de programmes pour insérer les commandes Define et Prgm...EndPrgm.

Remarques relatives à l'utilisation des sous-routines

À la fin d'une sous-routine, le processus d'exécution revient au programme qui l'a appelée. Pour quitter une sous-routine à tout autre moment, utilisez la commande Return sans spécifier d'argument.

Une sous-routine n'a pas accès aux variables locales déclarées dans le programme qui l'a appelée. De la même façon, le programme qui appelle la sous-routine n'a pas accès aux variables locales déclarées dans celle-ci.

Les commandes Lbl sont considérées locales par rapport aux programmes dans lesquels elles se trouvent. Par conséquent, une commande Goto présente dans le programme appelant ne peut pas accéder à une étiquette située dans une sous-routine et inversement.

Élimination des erreurs de définition circulaire

Lors de l'évaluation d'une fonction définie par l'utilisateur ou de l'exécution d'un programme, vous pouvez spécifier un argument qui inclut la même variable que celle utilisée pour définir la fonction ou créer le programme. Cependant, pour éliminer tout risque d'erreur de définition circulaire, vous devez assigner une valeur aux variables qui sont utilisées dans le cadre de l'évaluation de la fonction ou de l'exécution du programme. Par exemple :

– ou –

À

Génère un message d'erreur de définition circulaire si aucune valeur n'est assignée à x ou i. Aucune erreur ne se produit si une valeur a été assignée à x ou i.